# s = False
# # if后面需要加个：
# if s:
#     # 分支里面所有语句都要统一缩进，
#     print('答案为true')
#     # 错误的缩进
# # print('答案为true')
# #     print('答案为true')
#
# else:
#     print("答案为false")
# # 这一行代码可以被正常输出，因为实际上他没有被包到else分支里面。
# # 在Python中，代码块是通过缩进来定义的，这是其语法的一部分，
# # 与大多数其他编程语言使用大括号 {} 来界定代码块（如C、Java等）不同。
# # Python的设计哲学强调代码的可读性，而强制缩进正是这一理念的具体体现之一。
# print('答案为true111')
#     # print('答案为true')
#
#

# print('判断一个字符串是否是空字符串')
#
# x = input('请输入一个字符串：')
# if x:  # 在python中一切皆对象，每个对象都有一个布尔值，而非空字符串的布尔值为true，空字符串的布尔值为false
#     print('x是一个非空字符串')
# else:
#     print('x就是一个空字符串')

# 如果if语句中只有一句代码，可以将语句卸载冒号后面
# a = 20
# b = 10
# # 在这段特定的 Python 代码中，max 变量在 if 条件成立时被定义，并且在条件之后立即使用，
# # 因此它是可见并且有值的。而在 Java 中，类似的情况会导致编译错误，
# # 除非你在条件之外也定义了 max 变量，或者确保在所有可能的程序路径中都对 max 进行了初始化
# if a < b: max = a;
# print(max)


# 三元运算符
# a = 20
# b = 10
# # value_if_true if condition else value_if_false
# # condition：这是一个布尔表达式，其结果为 True 或 False。
# # value_if_true：如果 condition 的结果为 True，则返回这个值。
# # value_if_false：如果 condition 的结果为 False，则返回这个值。
# max_value = a if a > b else b
# print(max_value)

# 多分支结构
flag = False

a = -1 if flag else 1
if a < 0 or a > 100:
    print('分数错误~')
elif a == 100:
    print("满分~")
elif a > 90:
    print('优秀~')
elif a > 80:
    print('良好')
elif a > 70:
    print('合格')
elif a > 60:
    print('及格')
else:
    print('不合格')
